// 目标1: 为什么要托管代码?
// 原因1: 多人协同开发, "合并"代码
// 原因2: git(版本管理系统) - 自己保存代码(防止本地丢失)
// 如何使用:  (本地仓库) - (远程仓库)
// 情况1: 新项目(无远程仓库)
// (1): 本地新建项目 - 并初始化本地仓库  -   (git init命令)  - 结果: .git文件夹(保存当前本地所有git版本状态)
// (2): 编码, 完成一个模块就暂存提交一次
// 暂存:  git add . (本地所有变换都暂存)
// 提交:  git commit -m '本次提交备注' (必须好好写-方便以后回滚) - (变更保存到了本地仓库 - 产生一次提交的快照)
// 继续编码 - 继续本地提交保存
// (3): 新建远程仓库(gitee.com), ssh的git地址
// 拉取的时候, 必须有这个网站的账号密码(非仓库管理员)
// 推送的时候, 必须让管理员把你的账号密码加到这个仓库里
// (4): (只有第一次), 建立本地仓库和远程仓库的链接  (一个本地只能对应一个远程)
// git remote add origin git地址
// (5): (只有第一次), 推送代码并建立读写通道(以后可以简化写法) git push -u origin master (把本地的master分支和远程origin上的master建立通道)
// 额外讲解: 如果把本地的子分支推上去  git push -u origin 子分支名  (本地必须有这个子分支)
//  以后 git push 直接 (看当前在哪个分支上)

// 情况2: 有项目(有远程仓库)
// (1): (只有第一次) 克隆下来(本地必须是一个空白的文件夹), git clone 远程git仓库地址
// 克隆某个分支  git clone -b 分支名 git地址
// (2): 编码. 写业务, 本地的代码, 手动复制进去...
// (3): git add .   git commit -m  '注释'
// (4): git pull / git push

// (重要): .git 并列的地方, 有一个 .gitignore文件
// 固定名, git忽略配置文件
// git会监测你所有的代码和文件夹的变更
// 但是有的东西, 我不想让git监测 (例如: dist文件夹, node_modules文件夹)
// 一般合并的是代码
